{{tag>développement web php}}

----

====== Symfony ======

**[[http://www.symfony-project.org/|Symfony]]** est un framework PHP, peut-être même LE framework php du moment...
Il a une architecture MVC, modèle Vue COntroller, tout peuvent l'avoir les frameworks ruby on rails en ruby ou django en python.

===== installation =====

==== Depuis les dépôts Ubuntu (version 1.0.17) ====

Installez le paquet [[apt://php5-symfony1.0]]


==== Depuis les dépôts du projet (version 1.0.19) ====

[[:tutoriel:comment_modifier_sources_maj#modifier_les_sources_de_mises_a_jour|Ajouter ce dépôt]] à vos sources de logiciels :
<file>deb http://www.symfony-project.org/get debian/</file>

Puis n'oubliez pas de [[:tutoriel:comment_modifier_sources_maj#recharger_la_liste_des_paquets|recharger la liste des paquets disponibles]].

[[:tutoriel:comment_installer_un_paquet|Installez]] ensuite le paquet **[[apt://php5-symfony|php5-symfony]]**

==== Avec PEAR (version 1.2.4) ====

[[:tutoriel:comment_installer_un_paquet|Installez]] d'abord les paquets **[[apt://php-pear,php5-cli,php5-xsl|php-pear php5-cli php5-xsl]]**

Vous pouvez vérifier l'installation depuis un terminal avec la commande :

<code>pear list</code>

Vous aurez la liste des paquets PEAR installés.

Installez ensuite symfony avec les commandes :
<code>
sudo pear channel-discover pear.symfony-project.com
sudo pear install symfony/symfony
</code>

Vous aurez le message suivant vous indiquant que l'installation s'est correctement déroulée.

<file>install ok: channel://pear.symfony-project.com/symfony-1.2.4</file>

=== Problèmes et solutions ===

Il semblerait que l'installation de symfony soit plus gourmande en ressources que les précédentes versions. Si vous obtenez le message d'erreur suivant (ou pas de message du tout) vous devrez augmenter la mémoire alloué à **php-cli** :

<file>Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 8192 bytes) in /usr/share/php/PEAR/Installer.php on line 539</file>

[[:tutoriel:comment_editer_un_fichier|Éditez le fichier]] **/etc/php5/cli/php.ini** pour allouer 64MB de mémoire puis reprenez l'installation :
<file>memory_limit = 64M      ; Maximum amount of memory a script may consume (32MB)</file>

===== Utilisation =====

Respectivement les commandes suivantes vous donnent l'aide et la version installée :

<code>
symfony
symfony -V
</code>

===== Liens =====

Le tutoriel de developpez.com (qu'il vous faudra peut-être lire en entier) :

  * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LI|Introduction]]
  * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LIII|La création d'un projet]]
  * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LIV|Les fichiers de configuration]]
  * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LV|La base de données]]
  * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LVI|Les modules]]
  * [[http://c-maneu.developpez.com/tutorial/web/php/symfony/intro/#LVI|Les objets de base]]

----